<?php namespace Home\Controller; 

use Hdphp\Controller\Controller;

/**
 * 注册控制器
 */
Class RegController extends Controller{
	/**
	 * 显示注册页面
	 */
	public function index(){
		$this->display();
	}

	/**
	 * 显示验证码
	 */
	public function showCode(){
		Code::height('42')->make();
		$this->display();
	}

	/**
	 * 验证表单
	 */
	public function check(){
		// p($_SESSION['code']);die;验证码是大写的
		if(IS_AJAX === false) throw new Exception("非法请求");
		// p($_POST);
		//如何获取键名？？？echo key($_POST)
		$key =addslashes(key($_POST));//获取键名，识别需要验证的是哪个？
		$value = $_POST[$key];  //获取对应键名的键值.
		// p(strtoupper($value));
		// 实例化客户用户表
		$userModel = new \Common\Model\User;
		switch ($key) {
			case 'username':
				if($userModel->check('username',$value)){
					$result = array('status'=>false,'msg'=>'用户名已存在');
					// p($reuslt);
				}else{
					$result = array('status'=>true);
				}
			break;
			case 'code':
				if($_SESSION['code'] != strtoupper($value)){
					// $reuslt = array('status'=>false);
					$result = array('status'=>false,'msg'=>'验证码错误');
					// p($result);
				}else{
					$result = array('status'=>true);
				}
			break;
		}
		exit(json_encode($result));
	}

	/**
	 * 添加用户
	 */
	public function addUser(){
		// p($_POST);  可以提交过来
		$userModel = new \Common\Model\User;
		if(IS_POST){
			$data = array(
				'username' =>$_POST['username'],
				'pwd' =>md5($_POST['pwd']),
			);
			// p($data);
			$uid = $userModel->addUser($data);
			if($uid){
				//这儿是处理session的
				$_SESSION[C('auth_key')] = $uid;
				setcookie(session_name(),session_id(),time()+3600*24*7,'/');
				//设置session失效时间
				$this->success('注册成功',U('Index/index'));//成功提示信息
			}
			$this->error('注册失败');
		}
	}
}

?>